# def min_pos(li):  # 寻找最小值
#     min_pos = 0
#     for i in range(1, len(li)):
#         if li[i] < li[min_pos]:
#             min_pos = i
#         return min_pos

import random

# 选择排序是不稳定的，受到相同数的位置影响
def select_sort(li):
    for i in range(len(li) - 1):  # 一共要跑n或者n-1趟
        min_pos = i  # 先假设最小值下标
        for j in range(i + 1, len(li)):  # 遍历后续的值是否小于假设的值
            if li[j] < li[min_pos]:  # 如果小于就将最小值下标进行更新
                min_pos = j
            li[i], li[min_pos] = li[min_pos], li[i]  # 将第i趟的最小值位置换到前面去


li = list(range(10000))
random.shuffle(li)
select_sort(li)
print(li)
